# 购物系统业务需求V1
# .0：（需要使用到列表技术）
# 购物：
# 1.
# 用户的账户里有钱
# 2.
# 用户可推一个空的购物车进商场
# 3.
# 开始购物，将自己想要的商品添加购物车
# 4.
# 打印购物小条
#
# 程序和数据流程梳理分析：
# 购前：
# 钱要有：money
# 有足够商品：列表来存储list
# 有购物车：列表list
#
# 购中：
# 是否有这个商品：
# 有
# 钱够不够：
# 够：
# 添加到购物车！
# 钱减去商品价格！
# 恭喜，购买成功！您的卡余额还剩xxx
# 不够：
# 穷鬼，钱不够！请到其他超市购买！
# 没有：
# 没有这个商品，别瞎弄！
# 购后：
# 输入Q，q: 退出：
# 打印购物小条！
#
# money = int(input('请充钱:'))
# money1 = money
# dict1 = {1: {'商品': 'apple', '价格': 5},
#          2: {'商品': 'banana', '价格': 3},
#          3: {'商品': 'pen', '价格': 6}
#         }
# list1 = []
# list2 = []
#
# def show_dict1():
#     print('商品：')
#     print(dict1)
#     print('金额:', money)
#
# def show_list1():
#     sum = 0
#     print('          购物车：')
#     n = len(list1)
#     for i in range(n):
#
#         print('{}   商品：{}   数量：{}   总价{}'.format(i, list1[i][0], list1[i][1], list1[i][2]))
#         sum += list1[i][2]
#     print('    金额：{}   共计：{}   余额：{}'.format(money1, sum, money))
#
# def if_str1(s):
#     if_n = 0
#     for k, v in dict1.items():
#         if v['商品'] == s:
#             if_n = k
#     return if_n
#
# def into_1(s, k):
#     sum = int(input('请输入数量：'))
#     n = sum * dict1[k]['价格']
#     if money >= n:
#         list2.extend([s, sum, n])
#         list1.append(list2)
#         print('恭喜，购买成功！')
#         return n
#     else:
#         print('穷鬼，钱不够！请到其他超市购买！')
#         return 0
#
#
# while 1 :
#     show_dict1()
#     str1 = input('请输入商品：')
#     k1 = int(if_str1(str1))
#     if k1 > 0:
#         n = int(into_1(str1, k1))
#         money = money - n
#     else:
#         print('没有这个商品，别瞎弄！')
#     str2 = input('是否继续，退出请按 Q \ q ,继续请按任意键：')
#     if str2 =='Q' or str2 == 'q':
#         break
#
# show_list1()




# 购物系统业务需求V2
# .0：
# 1.
# 现在用户在进商场之前需要从10张优惠券中，随机抽取一张优惠券。
# 比如抽到一个空凋的8折优惠券，后面在购物的过程中，空凋就可以按照8折后的价格来购买。
# 2.
# 优化购物小条的人性化打印。
# 购物时间，卡余额，购物数量，购买总商品的价值。
# 3.
# 添加退货功能。在购买途中，某个商品不要了，退回到购物架中！

# import datetime
# import random
# money = int(input('请充钱:'))
# money1 = money
# dict1 = {1: {'商品': 'apple', '价格': 5},
#          2: {'商品': 'banana', '价格': 3},
#          3: {'商品': 'pen', '价格': 6}
#         }
# dict1_n = len(dict1)
# random_i = random.randint(1, dict1_n)
# list1 = []
# list2 = []
#
# def show_dict1():
#     print('商品：')
#     print(dict1)
#     print('金额:', money)
#     print('{}等奖'.format(random_i))
#
# def show_list1():
#     sum = 0
#     print('时间：{}'.format(datetime.datetime.now()))
#     print('                购物车：')
#     n = len(list1)
#     for i in range(n):
#
#         print('{}   商品：{}   数量：{}   总价{}'.format(i, list1[i][0], list1[i][1], list1[i][2]))
#         sum += list1[i][2]
#     print('    金额：{}   共计：{}   余额：{}'.format(money1, sum, money))
#
# def if_str1(s):
#     if_n = 0
#     for k, v in dict1.items():
#         if v['商品'] == s:
#             if_n = k
#     return if_n
#
# def into_1(s, k):
#     sum = int(input('请输入数量：'))
#     if k == random_i:
#         n = (sum - 0.2) * dict1[k]['价格']
#     else:
#         n = sum * dict1[k]['价格']
#     if money >= n:
#         list2.extend([s, sum, n])
#         list1.append(list2)
#         print('恭喜，购买成功！')
#         return n
#     else:
#         print('穷鬼，钱不够！请到其他超市购买！')
#         return 0
#
# def list1_pop(s):
#     n = len(list1)
#     for i in range(n):
#
#         if list1[i][0] == s:
#             list1.pop(i)
#
#
# while 1:
#     show_dict1()
#     str1 = input('请输入商品：')
#     k1 = int(if_str1(str1))
#     if k1 > 0:
#         n = int(into_1(str1, k1))
#         list2 = []
#         money = money - n
#     else:
#         print('没有这个商品，别瞎弄！')
#     if int(input('进入购物车请按：0, NO请按：1')) == 0:
#         while 1:
#             print(list1)
#             s = input('请选择商品：')
#             list1_pop(s)
#             str3 = input('是否继续，退出请按 Q \ q, 继续请按任意键:')
#             if str3 == 'Q' or str3 == 'q':
#                 break
#
#     str2 = input('是否继续，退出请按 Q \ q, 继续请按任意键:')
#     if str2 == 'Q' or str2 == 'q':
#         break
#
# show_list1()
#
#
